package com.example.demo.test;


/**
 * 线程终端休眠
 */
public class ThreadTest08 {
    public static void main(String[] args) {
        Thread thread = new Thread(new MyRunnable2());
        thread.setName("t");
        thread.start();

        //希望五秒之后，t线程醒来（5秒后主线程的活干完了）
        try {
            Thread.sleep(1000 * 5);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
        //中断t线程的睡眠（这种终端睡眠的方式依靠了java的异常处理机制）
        thread.interrupt();
    }
}


class MyRunnable2 implements Runnable {
    @Override
    public void run() {
        System.out.println(Thread.currentThread().getName() + "...>begin");
        try {
            //睡眠一年
            Thread.sleep(1000*60*60*24*365);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
        //一年后会执行
        System.out.println(Thread.currentThread().getName()+"--->end");

    }
}
